function out = menufun(flag,Ap,s,t,param,glob)

switch flag
    case 'consumption'
        if t >= glob.R
            out = s + (1-glob.tau)*glob.at - Ap./(1+glob.r);
        else
            out = glob.gammac + param.beta.*(s - Ap./(1+glob.r) - glob.gammac ...
                + (1-glob.tau)*glob.wt(t)*glob.gammah);
        end
    case 'hours'
        if t>= glob.R
            out = NaN;
        else
            out = glob.gammah - ((1-param.beta)./((1-glob.tau)*glob.wt(t))).*(s - Ap./(1+glob.r) -...
                glob.gammac + (1-glob.tau)*glob.wt(t)*glob.gammah);
        end
    case 'earnings'
        if t>= glob.R
            out = 0;
        else
            out = glob.wt(t).*(glob.gammah - ((1-param.beta)./((1-glob.tau)*glob.wt(t))).*(s - Ap./(1+glob.r) -...
                glob.gammac + (1-glob.tau)*glob.wt(t)*glob.gammah));
        end
end

end